Technotes


Download

Acrobat file (161K)
Download

ClarisWorks 4 file (51K)
QuickView version

not available yet

TECHNOTE: Decomposing a QuickDraw GX Mapping



Technote 1054JULY 1996



by Lawrence D'Oliveiro
ldo@waikato.ac.nz
The University of Waikato, New Zealand

A QuickDraw GX mapping, being a 3-by-3 matrix, can specify any 2D linear transformation. It is easy enough to build up such a transformation from a sequence of primitive transformations, namely translations, scalings, rotations, skews and perspective distortions -- GX provides calls to construct nearly all of these components (the exception is perspective, for which there is library code in the GX SDK). Sometimes there is a need to go the other way: given an arbitrary linear transformation, can you break it into a sequence of pure translations, scalings, skews and perspective distortions? This Technote will show you how.

This Technote is aimed at those who already have some basic understanding of QuickDraw GX graphics, including how to make use of GX mappings. The exposition will take more of an intuitive, hand-waving approach, with little pretense at rigorous derivation.


This Technote is heavily dependent upon mathematical derivation, which HTML does not yet adequately support. In order to ensure the mathematical integrity of the text, we are not publishing the body of the Technote as an HTML file. You can download the Technote, in its entirety, either as an Adobe Acrobat or a ClarisWorks 4.0 document, by clicking on one of the icons that appear at the top of this page.


Further References

Acknowledgements

Thanks to Crispin Gardiner for first showing me how skews can add up to rotations. A salute goes to Cary Clark for letting loose the snowball that turned into QuickDraw GX, sucking so many other projects into its path. And fond remembrances go to Diana Rigg and Patrick Macnee, for teaching me the meaning of gxStyle.



Technotes
Previous Technote | Contents | Next Technote